Bibliography Report

Introduction

This report assesses the AFA Bibliography in regards to different measures and shows some information of the content. It does not assess the content of the sources but rather the bibliometric data.

Cleanliness of the Bibliography

Cleanliness of a bibliography is defined here as the quality of the bibliografic data in the bibliography. It does not concern any topical measures, only measures related to the bibliografic data in the bibliography.

The analysis is at the moment only done for DOIs as corresponding measures are not available at the moment for ISBNs and ISSNs and duplicate ISBNs and ISSNs can be rcorrect as div=fferent chapters of a book might be in the bibliography.

Entries with DOIs, ISBNs or ISSNs in Zotero

To identify a reference, the most widely used identifier is the DOI. The following table shows the number of references with a DOI and the number of unique DOIs.

To consider duplicate ISBNs or ISSNs as duplicates entries in the library is not waranted as e.g. differenc chapters of a book can be separate entries in the library and therefore lead to duplicates.

  • DOIs: 611 (40.68%) - 154 duplicates
  • ISBNss: 115 (7.66%) - 23 duplicates
  • ISBNss: 563 (37.48%) - 390 duplicates

DOIs in Zotero

The foilowing sections provide some more detailed analysis of the bibliography in Zenodo. The tables all contain clickable links which, shwen clicked, show the respective article in the Zotero bibliograpohy.

Duplicates

The following DOIs are duplicates in the bibliography. This table should be empty.

Show the code
#|
data.frame(
  doi = bib_data$metrics$zotero_dois$duplicate,
  link = paste0(bib_data$bibliography$url, "/items/", names(bib_data$metrics$zotero_dois$duplicate))
) |>
  dplyr::mutate(
    doi = paste0('<a href="', link, '" target="_blank">', doi, "</a>"),
    link = NULL
  ) |>
  knitr::kable(
    caption = "DOIs in Zenodo which are duplicated",
    escape = FALSE
  )
DOIs in Zenodo which are duplicated
doi
XKRZP9TP 10.1073/pnas.1211466110/-/DCSupplemental.www.pnas.org/cgi/doi/10.1073/pnas.1211466110
QPKPVPIW 10.1146/annurev-environ-042911-093511
9RA4S94N 10.1111/j.1475-2743.2008.00169.x
698SH9B2 10.1073/pnas.0703873104
TRX5YJJH 10.1016/j.jhydrol.2011.04.023
L4JTQQHN 10.1007/s11069-011-0064-6
S5VJBIKJ 10.1080/21513732.2011.634436
8AJVAU45 10.1007/s10531-015-1019-0
WHZ3YKTY 10.1016/j.jenvman.2010.03.023
M4UGNAKS 10.1016/j.cosust.2015.02.006
9P2HPFA2 10.1073/pnas.1013100108
ZY59PKGE 10.1126/science.aaa1788
52VKBADX 10.1016/S0020-7519(98)00056-3
DLSNF3R3 10.1146/annurev-environ-042911-093511
JGVL5SKF 10.1126/science.aaa1788
WVXL3CWW 10.1016/j.cub.2007.11.054
4D9EBYFA 10.1073/pnas.1211466110/-/DCSupplemental.www.pnas.org/cgi/doi/10.1073/pnas.1211466110
Z29DJNZY 10.1016/j.jhydrol.2011.04.023
CYKSYCUZ 10.1016/j.jhydrol.2014.01.055
GNDR8TMZ 10.1016/j.gloenvcha.2008.02.001
YWGWI9N3 10.1016/j.crm.2014.08.002
F3SKKFBH 10.1175/JCLI-D-12-00302.1
DDKR2E8Q 10.1525/bio.2009.59.11.6
CSA9ENM9 10.1016/S0140-6736(12)61678-X
W3EHYINH 10.1016/j.ecolind.2014.05.023
WEZ992BT 10.1080/21513732.2011.634436
T2XD77JX 10.1016/S0020-7519(01)00203-X
RERF7QRD 10.1016/j.cosust.2009.07.006
W5AJRB2X 10.1007/s10531-015-1019-0
YQ8GHN8J 10.1111/j.1365-294X.2012.05461.x
2N2YLS9F 10.1073/pnas.0703873104
2ADILHGL 10.1080/21513732.2011.634436
CN6XKS89 10.1016/j.jhydrol.2014.01.055
73B9IINA 10.1073/pnas.1013100108
GXNANZV7 10.1038/nature01833
UU8LLRMM 10.1016/j.gloenvcha.2011.08.005
QBSS49TB 10.1111/j.1469-0691.2008.02691.x
2ZIRE65B 10.1016/j.gloenvcha.2014.08.007
W93GC8EJ 10.1016/j.ecolind.2014.05.023
BJA5L3DY 10.1016/j.ecolind.2014.01.025
WIU8RG98 10.1016/j.cosust.2009.07.006
9BEMFIZD 10.1111/j.1365-294X.2012.05461.x
WIEA8WAF 10.1016/S0020-7519(01)00203-X
XV84CKIV 10.1016/S0140-6736(12)61678-X
WPHTYHDM 10.1111/j.1469-0691.2008.02691.x
6YD5QZET 10.1579/0044-7447(2007)36[614:TAAHNO]2.0.CO;2
E5THUUG5 10.1175/JCLI-D-12-00302.1
FNUHRJZ5 10.1016/j.gloenvcha.2008.02.001
UALSVJIX 10.1579/0044-7447(2007)36[614:TAAHNO]2.0.CO;2
4THF43HJ 10.1525/bio.2009.59.11.6
J7HETNRJ 10.1016/j.jenvman.2014.09.026
4M8YZKRC 10.1525/bio.2009.59.11.6
FZ8Q8JS2 10.1016/S0020-7519(98)00056-3
SYBKG64P 10.1016/j.cosust.2014.11.002
PG7PX9DK 10.1016/j.ecolind.2014.05.023
LJHNHKRH 10.1016/j.crm.2014.08.002
FH295ZBR 10.1016/j.ecolind.2014.01.025
AMXV43ET 10.1016/j.jenvman.2014.09.026
3ZT558LB 10.1016/j.gloenvcha.2014.08.007
5EXS2E4I 10.1146/annurev-environ-042911-093511
7XY4W5WT 10.1038/nature01833
ICJ8TD9Q 10.1016/j.gloenvcha.2011.08.005
EW7E3FVG 10.1007/s11069-011-0064-6
KVHG4GAB 10.1016/j.cub.2007.11.054
JRI4966L 10.1073/pnas.1302251110
AEW6P2YF 10.1146/annurev.polisci.2.1.493
N6SRQVB3 10.1007/s10113-013-0533-4
22XSXN74 10.1007/s10750-009-9979-2
3AIYLQPL 10.1016/j.envdev.2015.09.007
94LDEL2S 10.1111/fme.12133
7DVRXNN6 10.3389/fevo.2015.00137
Q7JE86BX 10.1111/j.1523-1739.2009.01243.x
TSCXN85Q 10.1016/j.gloenvcha.2014.03.001
PKW8KKPG 10.1080/21513732.2011.617711
UCZ3SLUP 10.1080/09500690902981269
R9XNZDGN 10.3390/su6107142
MLDNDRTS 10.1016/j.ecolecon.2016.03.018
PDSCGICN 10.1016/j.icesjms.2004.12.006
3N76MC5Y 10.1002/pad.259
IBX5BR3J 10.1111/fme.12133
5SD6UNTB 10.1111/j.1467-9493.2008.00343.x
WVVJKYZU 10.1016/j.ecolecon.2007.09.018
APWVLCI7 10.1111/j.1475-4959.2011.00432.x
SETJF9AE 10.1111/j.1472-4642.2011.00770.x
4GKD2R76 10.1016/j.ijdrr.2015.01.007
N6NRN2AJ 10.1080/14728028.2014.993431
5T9SRJCT 10.1111/j.1467-9493.2008.00343.x
SM5DBXB4 10.1016/S0016-7185(01)00027-6
ICGZL7JD 10.1017/S0376892910000366
V4Q8LDCW 10.1016/j.envhaz.2006.11.001
REV2NBTS 10.1353/lde.2012.0019
RYZDDBYS 10.1016/j.gloenvcha.2011.08.002
2BR3SGWB 10.1353/lde.2012.0019
UAV6MPC9 10.1016/j.envdev.2015.09.007
45WANHNI 10.1016/j.ecolecon.2007.09.018
45IQT3ES 10.1111/j.1468-0491.2008.00402.x
7BIGYE34 10.1007/s10750-009-9979-2
WIS6CZDB 8
MPUQHJR6 10.1146/annurev.polisci.2.1.493
E9D2WJ5K 10.1016/j.icesjms.2004.12.006
BAM5LCDE 10.1017/S1355770X12000551
RDNW6W2A 10.1016/j.gloenvcha.2014.03.001
64EIXP2E 10.1016/j.jenvman.2010.03.023
LYMKQBXH 10.1017/S1355770X12000551
R2R6N244 10.1080/14728028.2014.993431
23GDQPJ8 10.1111/j.1523-1739.2008.00970.x
YGGJIRLI 10.1146/annurev.energy.30.050504.144511
N97J8VPE 10.1016/j.icesjms.2004.12.003
7YZFEYVR 10.1016/j.envsci.2009.04.002
6PSYF3J6 10.1080/13504500609469666
NIM4IATL 10.1002/pad.259
WW3D5T6V 10.1111/j.1475-4959.2011.00432.x
7ZG8N4ZB 10.1016/j.ecolecon.2011.11.012
Y6HRNQ75 10.1111/j.1523-1739.2008.00970.x
9GXIAHRC 10.3390/atmos4040383
42SL27VA 10.1080/09500690902981269
2RY9VVUN 10.1017/S0376892910000366
UTXGU8T2 10.1016/j.ecolecon.2016.03.018
MC2CG9FM 10.1016/j.envsci.2014.10.011
HNPZGQ74 10.1073/pnas.1302251110
YBQAKTIN 10.1016/j.envsci.2009.04.002
LUCZYAK3 10.1016/j.envdev.2015.06.006
GBL6CVK9 10.1016/j.envhaz.2006.11.001
4L3VSGW7 10.1111/j.1472-4642.2011.00770.x
CBU9RIKM 10.1111/j.1523-1739.2009.01243.x
58NWJBGE 10.1080/13504500609469666
BCYYBV66 10.3390/atmos4040383
6IIBW3I2 10.1016/j.icesjms.2004.12.003
UFB4CWTX 10.3389/fevo.2015.00137
3FUC5I7G 10.1016/j.envdev.2015.06.006
EY9NYIWR 10.1080/03736245.2017.1299639
UEYABQ5T 10.1080/02673843.2012.657657
QJHEBFFF 10.1016/j.envsci.2014.10.011
JUEN28RA 10.1007/s10113-013-0533-4
ATXTYUEA 10.1080/02673843.2012.657657
43PWA7NU 10.1080/03736245.2017.1299639
P3IZQW8X 10.1016/S0016-7185(01)00027-6
R8XF9ZDD 10.1146/annurev.energy.30.050504.144511
CNREUHIN 10.1016/j.ecolecon.2011.11.012
C3PHHEJB 10.3390/su6107142
KNDRG4R3 10.1016/j.ijdrr.2015.01.007
5FWJTLSV 10.1080/21513732.2011.617711
8MDAYUTG 10.1111/j.1468-0491.2008.00402.x
AASRKY44 10.1016/j.cosust.2014.11.002
3UEGWTNH 10.1146/annurev.energy.30.050504.144511
DFHWJUE2 10.1016/j.gloenvcha.2014.03.001
SEJ7PENW 8
25NYMDFE 10.1016/j.gloenvcha.2011.08.002
4RCQTQQF 10.1016/j.cosust.2013.07.002
8ZMH3GJZ 10.1016/j.cosust.2013.07.002
RVC59KNZ 10.1016/j.cosust.2014.11.002
22HTBU6G 10.1016/j.cosust.2015.02.006
ITHEPW9K 10.1111/j.1475-2743.2008.00169.x
5GC5TY5V 10.1111/j.1475-2743.2008.00169.x

Non Standard

All DOIs should be given as only the DOI without the resolver, i.e. not starting withhttp`. The following table shows all entries which do have a non-copnform DOI:

Show the code
#|

http <- grep("http", bib_data$metrics$zotero_dois$id_raw)
data.frame(
  doi = bib_data$metrics$zotero_dois$id_raw[http],
  link = paste0(bib_data$bibliography$url, "/items/", names(bib_data$metrics$zotero_dois$id_raw)[http])
) |>
  dplyr::mutate(
    doi = paste0('<a href="', link, '" target="_blank">', doi, "</a>"),
    link = NULL
  ) |>
  knitr::kable(
    caption = "DOIs in Zenodo which include a `http`",
    escape = FALSE
  )

Not Valid

Here we do acheck for the structural validity of the dois. This check needs to be improved. Of these 103 are not valid. These are:

Show the code
#|

data.frame(
  doi = bib_data$metrics$zotero_dois$not_valid,
  link = paste0(bib_data$bibliography$url, "/items/", names(bib_data$metrics$zotero_dois$not_valid))
) |>
  dplyr::mutate(
    doi = paste0('<a href="', link, '" target="_blank">', doi, "</a>"),
    link = NULL
  ) |>
  knitr::kable(
    caption = "DOIs in Zenodo which ar not valid",
    escape = FALSE
  )

Not in OpenAlex

To validate the existence and validity of the DOIs, we check if the DOIs are in the OpenAlex database.

Of the 611 unique DOIs in the library, 103 (16.86%) are in not in OpenAlex. This includes the non-valid DOIS, whci are filtered out in the table below.

Show the code
data.frame(
  doi = bib_data$metrics$zotero_dois$not_in_oa,
  link = paste0(bib_data$bibliography$url, "/items/", names(bib_data$metrics$zotero_dois$not_in_oa))
) |>
  dplyr::mutate(
    doi = paste0('<a href="', link, '" target="_blank">', doi, "</a>"),
    link = NULL
  ) |>
  knitr::kable(
    caption = "DOIs in Zenodo which ar not in [OpenAlex](https://OpenAlex.org){target='_blank'}",
    escape = FALSE
  )
DOIs in Zenodo which ar not in OpenAlex
doi
EMFZMFJX 10.2788/47210
XKRZP9TP 10.1073/pnas.1211466110/-/DCSupplemental.www.pnas.org/cgi/doi/10.1073/pnas.1211466110
MP6TAUWI 10.1023/A:1026001626076
GPZFZGWV 10.7287/peerj.preprints.1218v2
QWTN5QAQ 10.1016/S0160-4120(99)00005-7
BPP9C9Z3 10.1163/157075511X554400
ZPIBRPWZ 10.1103/PhysRevLett.95.258101
52VKBADX 10.1016/S0020-7519(98)00056-3
8CAUH334 10.2989/1814232X.2012.675041
4D9EBYFA 10.1073/pnas.1211466110/-/DCSupplemental.www.pnas.org/cgi/doi/10.1073/pnas.1211466110
7YAS96FD 10.1126/science.1217245
F3SKKFBH 10.1175/JCLI-D-12-00302.1
CSA9ENM9 10.1016/S0140-6736(12)61678-X
PIPGYNPM 10.5897/IJBC12.030
NXLFBNHI 10.5751/ES-07823-200340
T2XD77JX 10.1016/S0020-7519(01)00203-X
IICB37UW 10.1175/BAMS-D-11-00021.1
P8I39ZL2 8209 [pii]
I8Z8QSFH 978-92-5-1066904
YQ8GHN8J 10.1111/j.1365-294X.2012.05461.x
63MKNL95 10.1016/B978-0-444-52272-6.00363-9
CP7UKF7C 10.1144/GSL.SP.2005.250.01.09
8WS4HETT 10.1641/0006-3568(2004)054[0817:DCPOD]2.0.CO;2
CT9V8TTG 10.1017/CBO9781107415379.016
SQWIYYPM 10.1016/S1352-2310(02)01009-9
6ZUEIKCH 10.1890/ES14-00292.1
9BEMFIZD 10.1111/j.1365-294X.2012.05461.x
WIEA8WAF 10.1016/S0020-7519(01)00203-X
XV84CKIV 10.1016/S0140-6736(12)61678-X
6YD5QZET 10.1579/0044-7447(2007)36[614:TAAHNO]2.0.CO;2
E5THUUG5 10.1175/JCLI-D-12-00302.1
DAUHJFVF 10.1016/S0160-4120(02)00099-5
XEJSJH6R 10.5751/ES-04531-170109
UALSVJIX 10.1579/0044-7447(2007)36[614:TAAHNO]2.0.CO;2
Q7WW5XNA citeulike-article-id:4423649
FZ8Q8JS2 10.1016/S0020-7519(98)00056-3
GYJ75W6E 10.5751/ES-05867-180412
UEPLVNCU 10.1023/A:1008877309871
H37N6HGV www.csuchico.edu/biol/Sociobiology/sociobiologyindex.html
ATNTZ2EC 10.1016/S0921-8181(00)00040-0
2A8GZBPL 10.1016/S0269-7491(03)00053-8
3Y3RFYQM 10.1017/S0376892906003183
MKJDFKPC 10.1017/S037689290400116X
FGF9VBT8 10.3366/E0954889009000280
M4ZNDDJN 10.1146/ammrev-soc-070308-115926
XMZYQJUS 10.1108/SAMPJ-04-2014-0020
AI5IRECR Doi 10.1017/S1355770x08004427
LAWDQPVS 10.3390/
G6QBKKSI 10.1111/j.0361-3666.2009.01126.x.4.
U4EJFNG4 10.1017/S1744137410000378
SM5DBXB4 10.1016/S0016-7185(01)00027-6
ICGZL7JD 10.1017/S0376892910000366
G55E2E6T 10.3920/JCNS2012.x002
68ZP4BMV 10.1007/s13398-014-0173-7.2
REV2NBTS 10.1353/lde.2012.0019
2BR3SGWB 10.1353/lde.2012.0019
WFY2CSUH 10.1257/aer.100.3.1
WIS6CZDB 8
BAM5LCDE 10.1017/S1355770X12000551
LYMKQBXH 10.1017/S1355770X12000551
2KNKKBIE 10.5751/ES-02051-120117
9EKHVM4E 10.5751/ES-05180-180109
RHYAIREK 10.1016/S0921-8009(98)00020-2
2RY9VVUN 10.1017/S0376892910000366
ZGM9B9N9 10.1579/0044-7447(2007)36[387:cldtpm]2.0.co;2
HHPN4PJZ 10.4103/0972-4923.49201
DMXFN5IH 10.5751/ES-04853-170322
X6YS2WQ7 10.1680/mpal.2012.165.0.1
5BCDTMNH 10.2307/2118057
9LHMA9FI Artn 19
Q4ZP6CLT 10.5751/ES-06638-190314
P3IZQW8X 10.1016/S0016-7185(01)00027-6
K3MAKFUN 18
WI48J4RJ 10.1007/sl0745-006-9013-5
UIRTKH4C 10.1139/F2011-061
32EU75A8 10.1073/pnas.1213163110/-/DCSupplemental.www.pnas.org/cgi/doi/10.1073/pnas.1213163110
66N2NPBF 10.1029/2001 WR000355; Döll, P., Kaspar, F., Alcamo, J., Computation of global water availability and water use at the scale of large drainage basins (1999) Math. Geol., 4, pp. 115-122; Döll, P., Kaspar, F., Lehner, B., A global hydrological m(TRUNCADO)
3MPJYJP8 10568/73375
SEJ7PENW 8
XQKWDTQK doi.org.proxy2.lib.umanitoba.ca/10.1
YC8LZL39 10.1111/j.1472-4642.2006.00308.x
WN9ZUH59 10.1016/S0167-8809(01)00206-7
KZ3MLYMJ 1092-8987
Y6UART9Z 10.5751/ES-07380-200152
LY5HBXSH 10.1007/SpringerReference_353599
TU5AIUE3 10.1016/S0305-750X(98)00141-7
CBY79WGJ 10.2993/0278-0771(2006)26
N4XZFHNY 10.5751/ES-07039-190450
UB3UCEK7 10.1017/CBO9781107415324.004
8NUXDFDA 10.1016/0006-3207(88)90050-X
FEFUW6LC 10.1659/MRD-JOURNAL-D-09-00040.1
E8QTCYN7 Project Code C08-0170-0062, 69 pp.
Y5KQ7BNG 10.5751/ES-04342-160406
7W8LXBTN 978-92-650-43-77-0
KLMF2KM5 10.1016/S0140-6736(12)61766-8
KJDYUQS3 10.5338/KJEA.2011.30.1.24
MW6K6ZEC 10.1073/pnas.1007217108/-/DCSupplemental.www.pnas.org/cgi/doi/10.1073/pnas.1007217108
9VIYA49J 10.1017/S0030605303000334
B8SHQU99 10.1023/A:1008880113990
QMAPYSUW 10.1017/CBO9780511750458
H9MW8SDS 10.5897/AJEST08.173
3UPB9GKG 10.7287/peerj.preprints.488v1
L6GPHCIW 10.1016/S0167-8809(01)00236-5

TODO Do Exist

TODO Finally we check, if these dois exist but are not ingested into OpanAlex. This is done using the doi.org resolver This is disabled at the moment and still needs o=to be implemented.

Bibliographic analysis

In the bibliographic analysis, we can only analyse the references in OpenAlex as the bibliographic metadata alanised is not in the Zotero liubrary but retrieved from OpenAlex.

Publication types

Works on Zenodo as well as on OpenAlex are of different types. Here we show these separate.

Show the code
bib_data$figure_types_data |>
  dplyr::arrange(
    from,
    desc(count)
  ) |>
  knitr::kable(
    caption = "Types of documents from the Zotero bibliography as well as from OpenApex."
  )
Types of documents from the Zotero bibliography as well as from OpenApex.
type count from
article 473 OpenAlex
review 56 OpenAlex
book 6 OpenAlex
book-chapter 5 OpenAlex
letter 3 OpenAlex
preprint 3 OpenAlex
editorial 1 OpenAlex
erratum 1 OpenAlex
report 1 OpenAlex
journalArticle 1207 Zotero
book 144 Zotero
report 112 Zotero
bookSection 14 Zotero
conferencePaper 9 Zotero
thesis 9 Zotero
manuscript 7 Zotero
Show the code
bib_data$figure_types

Zenodo versus OpenAlex Types

The types entered in the Zenodo library and the types as retrieved from OpenAlex are not linked, therefore they can differ, This can indicate problems but not necessarily has to. These cases need to be carefully evaluated and here only a starting point is given.

NA in OpenAlex is likely caused by the doi not found in OpenAlex (not in there, not valid, non-standard DOI in Zenodo). NA in Zotero is linked to non-standard DOI entries (i.e. with http) whcih can therefore not be linked to OpenAlex data. If all DOIs are in standard format, there should be no NAs in this Table in the column Ferom Zenodo.

Improvements should be done after feedback.

Show the code
bib_data$metrics$types$comparison |>
  knitr::kable(
    col.names = c("Type from Zenodo", "Type from [OpenAlex](https://OpenAlex.org){target='_blank'}", "count"),
    caption = "Table giving the combination of types from Zenodo as well as [OpenAlex](https://OpenAlex.org){target='_blank'} and their frequency"
  )
Table giving the combination of types from Zenodo as well as OpenAlex and their frequency
Type from Zenodo Type from OpenAlex count
journalArticle NA 703
journalArticle article 543
book NA 144
report NA 112
journalArticle review 57
NA article 47
bookSection NA 14
thesis NA 9
manuscript NA 7
NA review 7
conferencePaper NA 6
journalArticle letter 5
journalArticle book 5
journalArticle preprint 3
conferencePaper article 3
NA book-chapter 3
journalArticle book-chapter 2
conferencePaper review 2
journalArticle editorial 1
journalArticle erratum 1
journalArticle report 1
NA book 1

Year of Publication

Show the code
bib_data$figure_pub_year
Warning: Removed 1 row containing missing values or values outside the scale range
(`geom_col()`).

Access Status of References

This is checked by using the OpenAlex retrieved works. Therefore it is li=mited to the works that are on OpenAlex. At the moment, only references with a DOI were retrieved from OpenAlex.

Show the code
bib_data$figure_oa_status

50 Most often cited Journals

Based on the data entered in the bibliography on Zenodo

Show the code
bib_data$figure_top_journals

This table contains all Journals as specified in the Zotero database.

Show the code
bib_data$figure_top_journals_data |>
  IPBES.R::table_dt("cited_journals")

Coutries of Institutes of all authors

In this section we will take a closer look at the countries from which ih the authors ot the publication come. THe data comes from OpenAlex and includes all authoirs without weighting.

Show the code
#|
#| fig-height: 10
#| fig-width: 10

bib_data$figure_top_country_map

This plot only contains the countries with more than 10 references.

Show the code
#|
#| fig-height: 10
#| fig-width: 10

bib_data$figure_top_country

This table contains all countries and the number of authorship.

Show the code
bib_data$figure_top_country_data |>
  IPBES.R::table_dt("top_countries")